Tests: General Information |
HostMonitor is a network-monitoring tool that allows you to keep a close eye on what is going on the network. Monitoring is done by performing periodic checks of the network resources that are to be watched. These checks, in the HostMonitor terminology, are called tests. It is the administrator's responsibility to identify exactly what needs to be checked, and create a set of tests that will be doing the job.
In order to be able to create a monitoring environment that suits your needs, does what you meant it to do and reacts to events adequately and predictably, you must have a good enough understand of:
Each test has a set of properties that can be divided into statical and dynamical properties. HostMonitor
doesn't change statical properties; the user has to set them in the Test Properties dialog
(e.g. Test Name, Comment, Related URL, list of Master tests, Test Interval, Schedule, Alert Profile, etc). When
performing tests HostMonitor changes dynamical properties, such as: Status, Reply, Last Test Time, Recurrences, and
all kinds of statistical information. User can't directly change dynamical properties, only can reset statistics
for specified tests using a 'Reset' button in a Toolbar or menu item Test->Reset. Testing of
specified tests can also be manually performed at any time (not waiting for the time interval) using a
'Refresh' button in a Toolbar or menu item Test->Refresh (or just select a set of tests and press 'Space'
button). User can set a list of the test's properties to display by using Columns
page in the Options dialog.
HostMonitor performs tests in intervals that are set individually for every test, or on scheduled time (day of
the week, or month, see Schedule). Depending on the test result,
HostMonitor assigns one of the available statuses to it ('Host is alive', 'No answer', 'Unknown', 'Unknown host',
'Ok', 'Bad', 'Bad contents'; there are also special statuses available: 'Not tested', 'Checking..', 'Disabled',
'Wait for Master', 'Out of schedule').
- After finishing a test HostMonitor performs next steps:
- update statistics (dynamical properties), such as Total time, Alive time, Dead time, Total tests, Passed tests, Failed tests, Average reply, etc;
- if necessary HostMonitor will add information into a log file. You can find information about different log file types in Log&Reports section of this documentation;
- if necessary the program will start actions defined in the action profile.
Note: To operate with a test or a group of tests user can use Toolbar,
popup menu or a Test menu in a main window of
the HostMonitor. List of available actions: Add test, Edit test(s), Remove test(s), Copy test(s), Enable/Disable test(s),
Refresh test(s) status, Reset statistics, Show statistics, View private log, Trace, Telnet. For more information
about user interface, please, refer to TestList&Windows section of this documentation.
|
Test Methods |
A great variety of network services and resources can be watched over by the program.
The following is a list of test methods available in HostMonitor:
|
Tests: Agent List |
HostMonitor can perform tests by itself or it can use Remote Monitoring Agent
for this purpose. RMA is a small application that accepts requests from HostMonitor, performs test and provides
information about test result back to HostMonitor.
When you setup the properties of a test in Test Properties dialog you may select an agent
from drop down list or click on a button (to the right of the field) to manage agent list.
How to do:
How to add new agent to the list
To add a record for a (new) agent click on "New" button or press Insert key in the list of agents. When the dialog
"Agent Connection Parameters" appears set the following parameters for the agent:
- Agent address:
provide the host name or an IP address of the system where RMA is installed
- Item name:
name of the agent (this name will be displayed in agent's list, and will be used by HostMonitor for agent
identification). By default an address of an agent will be used as name for it but you may specify any other
name that you like
- Port:
TCP port that will be used for communication between HostMonitor and the agent. Here you should specify the
same port that you have already specified when that agent was installed and configured on a remote system
(by default agent uses port #1055)
- Timeout:
communication timeout in seconds. A maximum amount of time that HostMonitor will wait for an answer from the
agent. Please note: this timeout should be big enough to allow an agent to perform a test before sending an
answer to HostMonitor. When, for example, you are launching an external test and an external program needs 15
seconds to perform this test then the timeout should be set to 15 seconds plus an amount of time that is
necessary for data exchange between HostMonitor and an agent.
- Password:
here you should provide the same password that you have specified when an agent was installed and configured on
a remote system.
After you have finished entering the above information click "Test/Get info" button to check the settings of an
agent or click "Ok" button to check the settings and close dialog. HostMonitor will try to establish connection
with an agent and get information about agent: platform, version, comment, etc.
If connection with an agent was established, HostMonitor updates all agent information and sets status of the agent
to "operable". If HostMonitor was not able to get proper information from an agent, it sets its` status to "no
answer" (if no answer from agent received) or "bad answer" (if some error code was received from an agent, e.g.
wrong password).
How to edit connection parameters for the agent
To change connection parameters for an agent, select it from the list and click "Params" button (or just
double-click it). "Agent Connection Parameters" dialog will pop up, there you may setup connection parameters
(agent address, port, timeout, password, etc) like it was already described in previous abstract
("How to add new agent to the list").
How to obtain information about agent(s)
When you create a new agent record in the list, HostMonitor tries to connect to a specified agent and gets information from it. But you can refresh/reload this information at any time. To retrieve information about single agent, select an agent and click "Get Info" button. To retrieve information about all agents from the list, just click "Get Info (All)" button.
HostMonitor will then try to connect to each agent and gets the following information:
- Agent: an internal name of an agent;
- Platform: OS platform that this agent is designed for;
- Version: the version number of the agent;
- Developer: the company that created RMA software;
- Comment: the content of a comment field that you or system administrator had provided when a remote agent
was installed and configured.
If a connection with agent was established, HostMonitor updates all information and sets the status of an agent to
"operable". If HostMonitor was not able to get information from an agent, it sets the status to "no answer" (if no
answer from an agent was received) or "bad answer" (if some error code was received from an agent, e.g. wrong
password).
RMA Manager
To manage an array of Remote Monitoring Agents you may use RMA Manager
utility. It allows you to change settings for hundreds of agents that are installed on remote systems at one time
and from one location. Also RMA Manager allows you to reload or terminate agents, force agents to reread settings
from their ini files and even upgrade agent's code remotely.
Both RMA Manager and HostMonitor are using the same list of Remote Monitor Agents.
|
Tests: Common Properties |
Test particulars are defined in the Test Properties dialog:

Most properties are common across all test methods. However, each method has a set of parameters that are specific
to the test type. Let's have a look at the common properties first:
- Test By
Test can be performed by HostMonitor itself (by default) or by Remote Monitoring Agent.
You may select an agent from drop down list or click on a button (to the right of the field) to
manage agent list.
- Test Name
The name of the test; HostMonitor auto populates this field with a suggested name based on the type and other test
parameters; you can change that name to whatever name you want.
- Comment
Any comments those make sense to you.
You can specify one-line comment directly in the Test Properties dialog
or press button to bring-up popup dialog for entering multi-line
comments. In the status bar, in reports, and in the Test Detail Area
HostMonitor will display only 1st comment line. However using macro variables
(%TaskComment%, %CommentLine1%, %CommentLine2%, etc) you can access whole comment or any of its lines.
- Related URL
For each test, a related URL can be specified. By adding this property to the list of visible columns or to a
report, you will make the related URLs appear in the test list view or report sheet. In HTML reports, URLs appear
as hyperlinks. In the list view, tests with a related URL will have a popup menu item that launches the associated
program (typically, your default Internet browser).
- Enabled/Disabled
Enables or disables test execution.
Schedule
Specifies when to perform the test. You can choose between regular and irregular schedules.
A regular schedule assumes the test will be fired off at fixed time intervals, for instance, every 10 minutes. In
addition, a Schedule can be associated with a test to give you more control on your monitoring activities.
For example, if you want to test your proxy server only from Monday to Friday, select the "Monday-Friday, 24 hours"
schedule. You may select an existing schedule from a drop-down list or create any number of your own schedules.
If you do not select a schedule, HostMonitor will always check the host.
With an irregular schedule, tests are performed on a given day of week or month, at a given time. E.g. every
Monday at 9:00 am; or on the 15th of every month at 3:00pm.
Alert profile
Alerts are a highly flexible mechanism that allows you to implement different behaviors for different types of
events and conditions. Choose one of the existing Alert Profiles or create a new one,
designed specifically to suit your needs.
You can design an alert profile, using different alert methods, such as a visual and sound warning; send an E-mail
message to a mailbox, pager or mobile phone; execute an external program, restart service, reboot local or remote
computer, dial-up to the network, send data to TCP/UDP port, execute SQL Query, and much more. For more
information, please, refer to Actions section of this documentation.
If you don't select an alert profile, HostMonitor will only write down a record to the log file (if the logging is
enabled), and no other action is taken even if the status of the host changes.
Reverse alert
When this option is selected, HostMonitor regards test results that are normally considered benign, as abnormal
ones, and vice versa.
This can be useful in some situations. For example, CPU Usage test returns an "Ok" status if the processor load
ratio is below a predefined value. With the "Reverse alert" option turned on, the test will work the other way
around, so the administrator will be alerted when the processor load is below a predefined value.
Here is how the conversion works for different status values:
Original status | Reverse status |
Alive | Bad |
Dead | Ok |
Ok | Bad |
Bad | Ok |
BadContents | Ok |
Other status values are not affected.
- Treat Unknown status as Bad
With this option enabled, if test results cannot be obtained, actions are triggered by HostMonitor the same way
as if the test returned a "Bad" status.
The option is not applicable to some of the test types. Please refer to the table below for the meaning of "Unknown" status for different test types:
Test | Option is applicable | "Unknown" status condition |
Ping | Yes | Host name cannot be resolved into IP address |
Trace | Yes | Host name cannot be resolved into IP address |
URL | No | |
HTTP | Yes | Host name cannot be resolved into IP address |
TCP | Yes | Host name cannot be resolved into IP address |
UDP | Yes | Host name cannot be resolved into IP address |
NTP | Yes | Host name cannot be resolved into IP address |
SMTP | Yes | Host name cannot be resolved into IP address |
POP3 | Yes | Host name cannot be resolved into IP address |
IMAP | Yes | Host name cannot be resolved into IP address |
DNS | Yes | Host name cannot be resolved into IP address |
LDAP | Yes | Host name cannot be resolved into IP address |
RADIUS | Yes | Host name cannot be resolved into IP address |
UNC | Yes | Resource is unavailable (option is applicable for free space check only) |
Drive Free Space | Yes | Disk drive information is unavailable (e. g., the drive is unmapped) |
Folder/File Size | Yes | File/folder doesn't exist |
Count Files | Yes | Folder doesn't exist |
Folder/File Availability | No | |
File Integrity | Yes | File doesn't exist or read error |
Text Log | Yes | File doesn't exist or read error |
Compare Files | Yes | Target file(s) does not exist |
Process | Yes | Information (list of processes) cannot be retrieved |
Service | Yes | Connection to CS Manager cannot be established |
NT Events Log | Yes | Information cannot be retrieved |
CPU Usage | Yes | Information cannot be retrieved |
Database | No | |
ODBC Query | Yes | SQL query fails, or the data field specified is not found in the result set |
SNMP | Yes | Information cannot be retrieved |
External test | Yes | HostMonitor cannot execute external program (program doesn't exist) or program doesn't return ERRORLEVEL within a specified time |
RAS | Yes | Connection was not established because of a problem on local system, e.g. modem is used by another application |
Performance Counter | Yes | Information cannot be retrieved |
Script | Yes | Script returns "Unknown" status, or an error occured during the script execution |
Log & Reports
- Use common log
If the "Use common log" option is selected, HostMonitors records test data in a single log file shared by all
tests. Common Log settings located on Log Settings page in the
Options dialog.
Choose one of the following options to specify when information should be recorded:
- Default - the common settings defined in the Options dialog are used;
- Brief - record information whenever status of the test changes;
- Full - record all test results, regardless of whether their status had changed or not;
- Reply - record information into log every time the status or reply value of the test changes.
For more information about different logging options, please, refer to
Log&Reports section of this documentation.
- Use private log
Additionally, for each test you can define its own, dedicated log file by checking the "Use private log" option.
The type of a private log is determined based on the file extension: HTML for .htm*, DBF for .dbf, plain text
for any other extension.
Private logs can be configured to work in one of the following modes:
- Default - the common settings defined in the Options dialog are used;
- Brief - record information whenever status of the test changes;
- Full - record all test results, regardless of whether their status had changed or not;
- Reply - record information into log every time the status or reply value of the test changes.
If a private log is specified, the popup menu for that test will contain the item, "View private log".
For more information about different logging options, please, refer to Log&Reports section
of this documentation.
- Exclude from reports
These check boxes allow the user to exclude the test information from reports. For more information about the
report customization, please, refer to Report Manager section of this
documentation.
Master/Dependent tests
This test depends on another test(s)
For each test, you can define a list of other tests it depends on, or Master tests. For each Master test you can
choose the condition to perform the dependent test based on the status of the Master test:
- "Alive";
- "Alive" or "Unknown";
- "Dead";
- "Dead" or "Unknown".
As an example, consider a network configuration where the accessibility of the company's several web servers
depends on the state of a single router. When the router is down, there is probably little sense in trying to do
the dozens of tests designed to collect information on the web servers.
That was, of course, a very simplified example. With this feature, you can implement quite sophisticated dependencies
involving a number of master tests which, in turn, depend on other tests' results. For more information on
dependencies, please, see the following options: "Syncronize counters",
"Syncronize status & alerts", "Consider status of the master test obsolete after N seconds"
(Options dialog).
This test depends on expression
Instead of making test to be dependent on a list of Master tests you can define a condition to perform the test
using some logical expression. In these expressions you can use:
- numbers and strings (in quotes). Strings that contain a number plus one of the following unit specificators
[ms, Kb, Mb, Gb, %] are compared as numbers, so that '900 Kb'
is less than '9 Mb'
- macro variables related to the current test or to any other test;
- global macro variables;
- logical operators [and, or, not, <, >, >=, <=, ==, <>];
- arithmetic operators div, mod. The value of (x div y)
is the value of x divided by y and then rounded in the direction of zero to the nearest integer;
'mod' operator returns the remainder obtained by dividing its operands (in other words, (x mod y) == x - (x div y) * y);
- parentheses. In complex expressions, common rules of precedence determine the order in which operations are performed:
Operators | Precedence |
not | first (highest) |
div, mod | second |
<, >, >=, <=, ==, <> | Third |
and, or | fourth (lowest) |
An operator with higher precedence is evaluated before an operator with lower precedence, while operators
of equal precedence associate to the left. You can use parentheses to override precedence rules.
An expression within parentheses is evaluated first and then its result is treated as a single operand.
This mode is more complicated than a standard list of Master tests but it is very flexible. Just several simple
examples:
-
with expression ('%::Ping Router::SimpleStatus%'=="UP") and ('%::Ping Router::Reply%'<'800 ms')
HostMonitor performs a test when the test named "Ping Router" has a good status and the reply time for the
router is below 800 ms;
-
use expression like ('%::TestA::SimpleStatus%'=='UP') or ('%TestB:: SimpleStatus%'=='UP')
to perform a test when either TestA or TestB has "good" status.
OtherwiseStatus
Sometimes HostMonitor may fail to parse logical expressions. For example when a variable has no value due to the
failure to perform some other tests. In this case HostMonitor will not perform the dependant test. Instead it
will set a special status for the current dependant test. The same happens when a logical expression returns
"false" value (this means that a condition was not met). You may define this status in the "OtherwiseStatus"
property of the test. You can provide the status name ('Host is alive', 'No answer', 'Unknown', 'Unknown host',
'Ok', 'Bad', or 'Bad contents') or specify a macro variable that describes the status of another test
(e.g. %::Ping Router::Status%).
For more information on dependencies, see the following options: "Syncronize counters",
"Syncronize status & alerts", "Consider status of the master test obsolete after N seconds"
(Options dialog).
Synchronize counters
This option only applies to tests that have one or more master tests. When the option is turned off, and some test
is not being launched because its launch condition has not been met, HostMonitors simply marks such a test with
the "Wait for Master" status and does not change any counters. If, however, the option is turned on, HostMonitor
will update statistics information accordingly to the Master test status. Thus, if a router on which other tests
depend has been tested to a "No answer" status, HostMonitor will increment respective counters (like "Dead time",
"Failed tests", etc) for router and for all dependent tests with the "Synchronize counters" option on.
Synchronize status & alerts
This option is applicable only if "Synchronize counters" is also selected. When the
option is turned on, besides synchronizing counters, the dependent test receives the status of the master test,
which in turn will start action dispatching based on the status propagated from the master test.
Example: On your corporate network you have 10 web servers and 1 router that is critical to the entire network.
A router Ping test is set up to page the administrator if the router does not respond. So when the router goes
down, and the "Synchronize status&alerts" option is turned off, HostMonitor sends a message to the administrator's
pager and suspends all dependent tests. If "Synchronize status&alerts" is on, in addition to the router problem
notification, actions defined on the dependent tests will be fired off as well.
- Dependencies of this test
This is a read-only list for information purpose. It displays tests that depend on the current test.
|
Test Methods |
Listed below are the various test methods supported by HostMonitor, along with a description of their method-specific parameters
|
Ping |
The ping command verifies connections to remote computers, routers and other network components by sending ICMP
(Internet Control Message Protocol) echo packets to the remote component and listening for echo reply packets.
It's best to use the Ping method to check a remote connection in general. To check specific services and
conditions, HostMonitor provides a number of special test types.
In addition to the common test parameters the Ping test has the following options:
Address
Provide the domain name (e. g. www.yahoo.com) or IP address (e. g. 204.71.200.68) of the host that you wish to
monitor.
Please note, a range of IP addresses (e.g. 123.123.123.1 - 123.123.123.254) rather than a single address can be
specified. In this case, HostMonitor will create a separate test for each of the addresses within that range.
Timeout
Specify a timeout interval in milliseconds. If you set parameter to 0, HostMonitor
will use value of the global Timeout parameter specified on
Ping/Trace page in the Options dialog.
Packet size
Specify the size of echo packets. This parameter is optional. If it's value is 0 (default value), HostMonitor
will use global Packet Size parameter specified on Ping/Trace page in
the Options dialog.
Packets
Specify the number of echo packets. If you set parameter to 0,
HostMonitor will use value of the global "Packet to send" parameter specified on
Ping/Trace page in the Options dialog.
Time to Live
Time to Live parameter is common for all Ping tests, specify this parameters on Ping/Trace
page in the Options dialog.
Status is bad when N (or more) % of packet lost
A packet loss threshold can be specified for a Ping test, based on which the test status is determined. That is,
in HostMonitor version 1 a test was considered failed if no echo packets were received (100% loss). Now
you can set the packet loss limit.
Display mode
Select 1 of 3 options that determine what information HostMonitor will display in the Reply field:
Reply time - the "Reply" field will represent average reply time
% of lost - display percentage of lost packets,
% of received - display percentage of received packets.
|
Trace |
Traces the route to a remote host over the network. This test allows you to check the route that all packets take
to go from your machine to a specific host on the Internet (Intranel, LAN). It also can check the time each hop
(or each machine packets go through) takes to answer.
In addition to the common test parameters, the Trace test has the following options:
Address
This is the name or IP address of the host route that you want to test.
Timeout
Specify a timeout interval in milliseconds.
Packet size
Specify the size of ECHO packets in bytes.
Retries
Specify how many times HostMonitor will try to resend ECHO packets when it does not receive the respond.
Alert when
Choose one of the conditions to determine is route "good" or "bad":
route was changed
HostMonitor will mark test as "Bad" every time route changed
number of hops different from NN
Test will change status to "Bad" if number of hops is different from specified
number of hops greater than NN
Test will change status to "Bad" if number of hops is greater than specified
number of hops less than NN
Test will change status to "Bad" if number of hops is less than specified
maximum reply time more than NN milliseconds
Mark test as "Bad" when reply time from any of the hosts is longer than specified
traffic thru the host
HostMonitor will mark test as "Bad" every time traffic will go thru specified intermediate host
traffic bypass host
HostMonitor will mark test as "Bad" every time traffic will not go thru specified intermediate host
Display
This option determines what information HostMonitor will display in Reply field. Choose one of the following options:
Total time
Average reply time
Maximum reply time
Number of hops
Number of non-responding devices
Route, brief mode (list of IP addresses only)
Route, full mode (hop, IP address, time)
|
URL |
HostMonitor can perform a URL (Universal Resource Locator) check based on the
HTTP (web), HTTPS (secure web), FTP or Gopher protocols.
To perform URL check HostMonitor can connect to a remote server directly or through a proxy server, this proxy server can be defined on the
PROXY page in the Options dialog.
In addition to the common test parameters, the URL test has the following options:
URL
Enter the URL you want to monitor. HostMonitor is not limited to the
retrieval of HTML files for the HTTP and HTTPS checking, it can
also retrieve other types of pages, even CGI scripts.
Examples of URLs include:
http://www.yahoo.com/index.html
https://www.super.secure.server.gov:444/unpublished/mainpage.html
ftp://ftp.bhs.com/incoming/list.txt
Password protected page
Use this option when the URL specified requires a name and password for access.
User name
If the URL specified requires a name and password for access, enter the user name in this box.
Password
If the URL specified requires a name and password for access, enter the password in this box.
Code 302 (redirect) is Ok
This parameter determines the HostMonitor's behavior, when HTTP/HTTPS server issues a redirect.
If option disabled and HTTP server returns code 301 (Moved Permanently) or 302 (Moved Temporarily),
HostMonitor marks test as "Bad".
With this option enabled HostMonitor sets "Host is alive" status.
Ignore unknown certificate authority problems
This option allows checking web servers that use HTTPS protocol and security
certificates that were issued by not trusted company. With this option enabled,
HostMonitor will accept security certificates issued by any company.
When this option is disabled and the certificate belongs to a not trusted
company then HostMonitor will set the test status to "no answer".
The URL test doesn't automatically retrieve any objects linked from the page. You can, however, instruct
HostMonitor to retrieve the nested frames and images.
Download nested frames
Select this box if you want to retrieve the all frames referenced in a frameset and count their retrieval time in
the total time to download this page. If "Download images" is also checked, HostMonitor will attempt to retrieve
all images in all frames. In case the program successfully retrieve page specified in the URL field but cannot
receive one of the nested frames, HostMonitor will mark test as "Bad contents".
Download images
Enable this option if you want the status and response time statistics to include the retrieval time for all of
the embedded images in the page. Embedded images include those referenced by <IMG> HTML tags. Images that appear
more than once in a page are only the retrieved once. In case the program successfully retrieve the page
specified in the URL field but cannot receive one of images, HostMonitor will mark test as "Bad contents".
Check CRC
With this option enabled HostMonitor will save CRC (Cyclical Redundancy Check) of the downloaded data and do a
checksum comparison each subsequent time test is performed. If the checksum changes, the test will have
"Bad contents" status. So, if someone hack your site, HostMonitor can
detect this before thousands of people see their handiwork on your corporate site.
By default HostMonitor calculates (and checks) CRC for page specified in the URL. But if "Download nested frames"
and/or "Download images" options are enabled, HostMonitor will calculate CRC for the nested frames and/or images
as well.
Check contents
HostMonitor can search for a string (or several strings) in the returned page and start alert actions when string
exists (or doesn't exist) on the page. Define string(s) and condition to alert using following options:
Mode
This option determines condition to check. Choose one of the available modes:
- should contain | HostMonitor will set "Bad contents" status when page does not contain specified string |
- should not contain | HostMonitor will set "Bad contents" status when page contains specified string |
- use expression |
HostMonitor will consider the string as boolean (logical) expression, evaluate expression using data received
from the server, and set "Bad contents" status when retrieved page does not satisfy the required conditions.
For example: if you define expression like "'No errors' and not ('Error' or 'Warning')",
then HostMonitor will mark test as "Host is alive" when retrieved page contains string 'No error'
and does not contain either 'Error' or 'Warning' |
Expression
Enter a string of text to check the returned page. Remember that HTML tags are part of a document, so include the
HTML tags if they are part of the text you are searching for (for example, "<B>Hello</B> World").
If you chose "use expression" mode, you may use expressions like "("Total" and "End Of Page")
and not ('Error' or 'Warning')". In this case, a test will have a "Host is alive" status when monitor can
receive specified page and this page contains both strings "Total" and
"End Of Page", and doesn't contain either strings "Error"
or "Warning". In the expression you may use strings (must be concluded in quotes
(') or in double quotes (")); round brackets; logical operators "and", "or", "not".
Case sensitive
With this option enabled search is case sensitive
Whole words only
Searches are for words only. With this option disabled, the search string might be found within longer words.
Note: some server-based scripts can check agent's name and return different
information for different HTTP agents (e.g. generate different HTML pages
for Internet Explorer or Netscape).
To get correct test results you may need to change "Agent name" parameter.
Use Miscellaneous page in the
Options dialog for this purpose.
|
HTTP |
The HTTP test provides you with the ability to monitor HTTP based servers, verify the content of dynamically generated pages, check for the changed content. Also it can help you verify that CGI scripts and back-end databases are functioning properly.
In contrast to URL test, that can perform HTTP request as well, HTTP test does not use wininet.dll (part of Internet Explorer). In this way we can avoid any problems related to IE's bugs (of course we can make mistakes as well but we always are able to fix our own mistakes :-).
Also using HTTP test you can define more parameters specific to HTTP protocol and setup more varied checks.
In addition to the common test parameters, the HTTP test has the following options:
HTTP request parameters:
URL
Enter the URL you want to monitor (for example, http://www.ourbiggestserver.com)
Proxy
Optionally, a proxy server can be used to access the URL. Select a proxy server from the drop down list or choose
"<none>" to perform direct request to HTTP server.
You can open Proxies List dialog to modify the list of proxy servers. For each item from the proxy list you can
specify:
Domain name or IP address of the HTTP proxy server
TCP port
User name
Password
Request
Choose type of HTTP request:
HEADER | request for HTTP header. Server will return status information about the document (HTTP header) but will not transfer data. It allows you to check web server functionality with minimum network traffic but you cannot check the content of the web page. |
GET |
request the page specified by URL parameter. Server will return status information (HTTP header) and data.
You can use "Check content" and "Check CRC" options
to monitor contents of the page. |
POST |
send data (defined in "Post data" field) to the web server to be processed in some way, like by a CGI script.
In this case URL is not a resource to retrieve; it's usually a program to handle the data you are sending.
The HTTP response is normally the program output, not a static file. The most common use of POST is to submit
HTML form data to CGI scripts. In this case, the "Content-Type:" header is usually set to
"application/x-www-form-urlencoded". So, when you choose POST request, HostMonitor
adds this header into "Optional headers" field by default. However you can change that
header to another one or remove it. |
Follow redirect
This parameter determines the HostMonitor's behavior, when the server issues a redirect. When the option enabled
HostMonitor follows redirect and retrieve URL specified by server. If option disabled and HTTP server returns code
301 (Moved Permanently) or 302 (Moved Temporarily), HostMonitor marks test as "Bad".
Post data
If the URL is for a POST request, enter the post variables as name1=value1&name2=value2.
This option is used to verify that a form is working correctly by performing the same request which occurs when
a user submits a form. See also the "Check content" option for a way to verify that
the correct form response was received.
Authorization
Use this option when the URL specified requires a name and password for access.
User name
If the URL specified requires a name and password for access, enter the user name in this box.
Password
If the URL specified requires a name and password for access, enter the password in this box.
Agent
Some server-based scripts can check agent's name and return different information for different HTTP agents
(e.g. generate different HTML pages for Internet Explorer or Netscape). You can change this parameter to get
correct results.
Timeout
Specify the number of seconds that the test should wait for a page to complete downloading before timing-out.
Once this time period is over, the monitor will mark test as "No answer". If you have checked the "Download
nested frames" or "Download images" option, HostMonitor will use the same timeout for all frames/images
referenced on the page.
If the Timeout property is set to 0 (default value), HostMonitor will use default Windows timeout specified for
TCP protocol.
Allow per-session cookies
With this option enabled HostMonitor remembers cookies received from the server, and sends them back in case of
redirection to another URL.
This option can be useful when you need to check some access-restricted resources. Often web-based authorization
systems use cookies to identify user. How it usually works:
- user opens login page, enters login and password, and clicks "Login" button;
- browser sends POST or GET request to a server with data entered by user;
- server checks login/password and (in case data are correct) assings session ID for the user;
- server sends cookie that contains ID to user's browser, and redirects user to another page;
- browser must store cookie and send it back to server every time it (browser) requests access-restricted pages
So, now HostMonitor can work like your browser and login to your mailbox to check whether you have the new messages.
See also the "Check content" option for a way to verify that the correct response
was received.
Optional headers
Specify optional HTTP headers those will be added to request. For example you can define cookies using string like
"Cookie: name1=value1; name2=value2; name3=value3". When you send data to the server
using POST method, HostMonitor automatically insert "Content-Type: application/x-www-form-urlencoded"
header.
Optional test parameters:
The HTTP test doesn't automatically retrieve any objects linked from the page. You can, however, instruct
HostMonitor to retrieve the nested frames and images.
Download nested frames
Select this box if you want to retrieve the all frames referenced in a frameset and count their retrieval time in
the total time to download this page. If "Download images" is also checked, HostMonitor will attempt to retrieve
all images in all frames. In case the program successfully retrieve page specified in the URL field but cannot
receive one of the nested frames, HostMonitor will mark test as "Bad contents".
Download images
Enable this option if you want the status and response time statistics to include the retrieval time for all of
the embedded images in the page. Embedded images include those referenced by <IMG> HTML tags. Images that appear
more than once in a page are only the retrieved once. In case the program successfully retrieve the page
specified in the URL field but cannot receive one of images, HostMonitor will mark test as "Bad contents".
Check CRC
With this option enabled HostMonitor will save CRC (Cyclical Redundancy Check) of the downloaded data and do a
checksum comparison each subsequent time test is performed. If the checksum changes, the test will have
"Bad contents" status.
By default HostMonitor calculates (and checks) CRC for page specified in the URL. But if "Download nested frames"
and/or "Download images" options are enabled, HostMonitor will calculate CRC for the nested frames and/or images
as well.
Recalculate CRC when page content changes detected
With this option enabled, the new checksum will be recorded as the default in case the error "page content changed"
occurs, so the test will return to "Good" status until the checksum changes again.
Check header
HostMonitor can search for a string (or several strings) in the HTML header (received from a server) and start
alert actions when the string exists (or doesn't exist) in the header. Define string(s) and condition to alert
using following options:
Mode
This option determines condition to check. Choose one of the available modes:
- should contain | HostMonitor will set "Bad contents" status when HTTP header does not contain specified string |
- should not contain | HostMonitor will set "Bad contents" status when HTTP header contains specified string |
- use expression |
HostMonitor will consider the string as boolean (logical) expression, evaluate expression using data received from the server, and set "Bad contents" status when retrieved HTTP header does not satisfy the required conditions.
For example: if you define expression like "'HTTP/1.1' and not ('301' or '302')",
then HostMonitor will mark test as "Host is alive" when retrieved data contains string 'HTTP/1.1'
and contains neither '301' nor '302'. |
Expression
Enter a string to check the returned HTTP header. If you chose "use expression" mode, you may use expressions like
"('HTTP/1.1' or 'HTTP/1.0') and not ('301' or '302')". In this case, a test will have
a "Host is alive" status when monitor gets reply from the server and retrieved HTTP header contains either
strings "HTTP/1.1" or "HTTP/1.0", and doesn't contain
either strings "301" or "302". In the expression you may
use strings (must be concluded in quotes (') or in double quotes (")); round brackets; logical
operators "and", "or", "not".
Case sensitive
With this option enabled search is case sensitive
Whole words only
Searches are for words only. With this option disabled, the search string might be found within longer words.
Check contents
HostMonitor can search for a string (or several strings) in the returned page and start alert actions when string
exists (or doesn't exist) on the page. Define string(s) and condition to alert using following options:
Mode
This option determines condition to check. Choose one of the available modes:
- should contain | HostMonitor will set "Bad contents" status when page does not contain specified string |
- should not contain | HostMonitor will set "Bad contents" status when page contains specified string |
- use expression |
HostMonitor will consider the string as boolean (logical) expression, evaluate expression using data received
from the server, and set "Bad contents" status when retrieved page does not satisfy the required conditions.
For example: if you define expression like "'No errors' and not ('Error' or 'Warning')",
then HostMonitor will mark test as "Host is alive" when retrieved page contains string 'No error'
and does not contain either 'Error' or 'Warning' |
Expression
Enter a string of text to check the returned page. Remember that HTML tags are part of a document, so include the
HTML tags if they are part of the text you are searching for (for example, "<B>Hello</B> World").
If you chose "use expression" mode, you may use expressions like "("Total" and "End Of Page")
and not ('Error' or 'Warning')". In this case, a test will have a "Host is alive" status when monitor can
receive specified page and this page contains both strings "Total" and
"End Of Page", and doesn't contain either strings "Error"
or "Warning". In the expression you may use strings (must be concluded in quotes
(') or in double quotes (")); round brackets; logical operators "and", "or", "not".
Translate date macro variables
This option allows you to use date & time variables
in the search string. It is useful when you have to monitor web pages
that shall be updated regularly. E.g. if you provide "%mm%-%dd%-%yyyyy%"
in the search string, HostMonitor will check the retrieved document for
the presence of a current date and will set "Bad content" status for the
documents without current date stamp. This option could be useful for testing
various scripts and applications that generate web pages.
Case sensitive
With this option enabled search is case sensitive
Whole words only
Searches are for words only. With this option disabled, the search string might be found within longer words.
Set "Bad" status when total download time is longer than NN msec
With this option enabled HostMonitor will check total download time and mark status as "Bad" when download time is
longer than specified.
BTW: When HostMonitor cannot retrieve page at all, it marks test as "No answer" and Reply value will be empty.
In case all checks passed, HostMonitor mark status as "Host is alive" and display total download time in the
"Reply" field. Also "Reply" field will display total download time when any reply received from HTTP server,
even if its message about error such as "Page not found" error.
|
TCP |
The TCP test provides you with the ability to monitor TCP based servers such as Whois, Finger, Telnet, Chargen, etc.
Please note, that you may check SMTP, POP, IMAP, DNS, LDAP, HTTP/HTTPS, and FTP servers using dedicated SMTP, POP,
IMAP, DNS, LDAP, URL, HTTP tests.
In addition to the common test parameters, the TCP test has the following options:
Host
Specify the host name or IP address of the destination host that should process the TCP connection.
Please note, a range of IP addresses (e.g. 123.123.123.1 - 123.123.123.254) rather than a single address can be
specified. In this case, HostMonitor will create a separate test for each of the addresses within that range.
Port
Specify the port number on which the host is listening for incoming TCP packets. E.g. Telnet servers use port #23,
Whois servers uses port #43, etc. For a list of conventional port numbers click the button to the right of the
port number box.
Timeout
Enter the amount of time (in seconds) that HostMonitor should wait for a response from the server. If this value
is 0 (default value), HostMonitor uses the default Windows timeout.
The following optional parameters allow you not only to check whether the connection could be accepted by remote
server but also allow to send some data to that server and check the response from it.
Send data
If you want to send data to the host (after TCP connection established), mark this option and enter the packet
data. If you need to send binary data, use sequences formatted %XX where XX is a hexadecimal code of a
character (byte). E.g. HELLO%0D%0A would send HELLO followed by a character ASCII 13
(line feed) and ASCII 10 (new line).
Alert when
To check the reply from the server, mark this option and choose one of the conditions to consider result of the
test as "Bad":
- no reply | HostMonitor will set "No answer" status when no reply from the server received and set test status to "Host is alive" when any reply received |
- any reply | HostMonitor will set "Ok" status when no reply from the server received and set test status to "Bad" when any reply received |
- reply contains | HostMonitor will set "Bad" status when reply from the server contains specified string (defined in "Compare with" field). If reply doesn't contain the specified string, HostMonitor will set "Ok" status. The program sets status to "No answer" when no reply received. |
- reply doesn't contain | HostMonitor will set "Ok" status when reply from the server contains specified string (defined in "Compare with" field). If reply doesn't contain the specified string, HostMonitor will set "Bad" status. The program sets status to "No answer" when no reply received. |
- reply equal to | HostMonitor will set "Bad" status when reply from the server equal to specified string (defined in "Compare with" field). If reply doesn't equal to the specified string, HostMonitor will set "Ok" status. The program sets status to "No answer" when no reply received. |
- reply not equal to | HostMonitor will set "Ok" status when reply from the server equal to specified string (defined in "Compare with" field). If reply doesn't equal to the specified string, HostMonitor will set "Bad" status. The program sets status to "No answer" when no reply received. |
Compare with
HostMonitor can compare data that was received from the server with specified string (use "Alert when" option to
choose compare condition). As in "Send data" field you can use sequences formatted %XX where XX is a
hexadecimal code of a character (byte). E.g. "October%00%00"
|
UDP |
The UDP test provides you with the ability to monitor UDP based servers such as TFTP, SNTP, Daytime, etc. Please
note, to check DNS, NTP, and RADIUS servers you can use dedicated DNS, NTP,
and RADIUS tests.
In addition to the common test parameters, the UDP test has the following options:
Server
Specify the host name or IP address of the destination host that should receive and process the UDP packet.
Port
Specify the port number on which the host is listening for incoming UDP packets. E.g. TFTP servers use port #69,
SNTP servers use port #123, Daytime servers use port #13, etc
Retries
Set the number of times HostMonitor will resend data to the server before test fails.
Timeout
Enter the amount of time (in seconds) that HostMonitor should wait for a response from the server.
Packet to send
Enter the packet data that should be sent to the host. Because most UDP servers accept binary data, you may need
to use sequences formatted %XX where XX is a hexadecimal code of a character (byte). E.g. HELLO%0D%0A would
send HELLO followed by a character ASCII 13 (line feed) and ASCII 10 (new line).
Alert when
Choose one of the conditions to consider result of the test as "Bad":
- no reply | HostMonitor will set "No answer" status when no reply from the server received and set test status to "Host is alive" when any reply received |
- any reply | HostMonitor will set "Ok" status when no reply from the server received and set test status to "Bad" when any reply received |
- reply contains | HostMonitor will set "Bad" status when reply from the server contains specified string (defined in "Compare with" field). If reply doesn't contain the specified string, HostMonitor will set "Ok" status. The program sets status to "No answer" when no reply received. |
- reply doesn't contain | HostMonitor will set "Ok" status when reply from the server contains specified string (defined in "Compare with" field). If reply doesn't contain the specified string, HostMonitor will set "Bad" status. The program sets status to "No answer" when no reply received. |
- reply equal to | HostMonitor will set "Bad" status when reply from the server equal to specified string (defined in "Compare with" field). If reply doesn't equal to the specified string, HostMonitor will set "Ok" status. The program sets status to "No answer" when no reply received. |
- reply not equal to | HostMonitor will set "Ok" status when reply from the server equal to specified string (defined in "Compare with" field). If reply doesn't equal to the specified string, HostMonitor will set "Bad" status. The program sets status to "No answer" when no reply received. |
Compare with
HostMonitor can compare data that was received from the server with specified string (use "Alert when" option to
choose compare condition). As in "Packet to send" field you can use sequences formatted %XX where XX is a
hexadecimal code of a character (byte). E.g. "October%00%00"
Examples:
To check your TFTP server fill up test parameters with following values:
Server: | address of the server |
Port: | 69 |
Alert when: | no reply |
Packet to send: | %00%01filename%00%00netascii%00 where filename is the name of the file on the server. We recommend provide incorrect (fake) name of the file. |
To check SNTP server fill up test parameters with following values:
Server: | address of the server |
Port: | 123 |
Alert when: | no reply |
Packet to send: |
%0B%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00
%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00
%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00
Yes, string must be so long because request packet must contain 48 bytes |
|
NTP/SNTP |
The Network Time Protocol (NTP) is widely used to synchronize computer clocks in the global Internet. Using
NTP/SNTP test you can easily check you NTP/SNTP server.
In addition to the common test parameters, the NTP test has the following options:
Server
Specify the host name or IP address of the destination host that should receive and process the request from
HostMonitor.
Port
Specify the port number on which the host is listening for incoming packets. By default NTP servers using port
#123.
Retries
Set the number of times HostMonitor will resend data to the server before test fails.
Timeout
Enter the amount of time (in seconds) that HostMonitor should wait for a response from the server.
Alert when difference in time greater than XX sec
With this option enabled HostMonitor will mark test item as "Bad" when difference in time between the server and
local system greater than specified value. If this option is disabled HostMonitor will set test's status to
"Host is alive" when any correct response received from the server.
Display mode
This parameter defines what HostMonitor will display in "Reply" field. Choose one of the following options:
Reply time - display time required to send request and receive reply from the server
Remote time - display server's system time (Coordinated Universal Time)
Difference in time - display difference in time between server and local system
|
SMTP |
Most Internet e-mail servers use the Simple Mail Transfer Protocol (SMTP) to transmit e-mail from server to server.
HostMonitor monitors this type of server by sending an SMTP command to the server as if it were an e-mail client
or another server verifying the existence of a user. By verifying the username, the program effectively tests the
SMTP server`s mail database without generating unnecessary mail messages.
In addition to the common test parameters, the SMTP test has the following options:
Server
This is the name or IP address of the mail server you want to test, usually in the form "mail.yourcom.com".
Port
The default test port is 25, but you can specify a non-standard port. For a list of conventional port numbers click
the button to the right of the port number box.
Timeout
This is the amount of time in seconds the program will wait for a response from the server before the request
fails. Set this to 0 for no timeout (not recommended).
Perform 'VRFY' test
When checked, the test performs will include the verify ('VRFY') command, which is a complete test of the server's
user database and its ability to respond to client requests. When this field is not checked, HostMonitor will log
on to the mail server and then log off, but will not issue the "VRFY" command as part of the test. Skipping this
command provides nearly the same level of server monitoring, since logging on and off effectively verifies that
the mail server is accepting connections.
For mail servers that support the "VRFY" command, and have it enabled, we suggest that you use the complete test.
However, some mail servers do not support the "VRFY" command, so turning this check off is required. In addition,
for security reasons, the "VRFY" command is sometimes disabled on some servers, again requiring that this extra
test would be turned off.
User Name
Enter a valid e-mail account name that exists on the server you are testing. HostMonitor will ask the server if
this user exists. Most mail servers have "root" or "postmaster" accounts defined, even if the server is used
only to forward outgoing mail. You can also use your own account name, assuming you have an account on that
server.
|
POP3 |
E-mail is commonly posted and transferred between mail servers using SMTP, but access to mail is provided through
POP3 (Post Office Protocol version 3). POP3 test can be used to test that your mail server's POP functions are
functioning perfectly. To perform test HostMonitor login to the server and logout using specified user account.
As an option HostMonitor can check number of messages and size of messages for specified user. If messages
count/size exceed specified limit, the program can start alert actions.
In addition to the common test parameters, the POP3 test has the following options:
Server
This is the name or IP address of the mail server you want to test, usually in the form "mail.yourcom.com".
Port
The default test port is 110, but you can specify a non-standard port.
Timeout
This is the amount of time in seconds the program will wait for a response from the server before the request fails.
Set this to 0 for no timeout (not recommended).
User Name
HostMonitor will test the POP server by logging in to it using an existing account. In the user name field, supply
the name of an account that can be used for testing. HostMonitor will log into the account and check the status
of its mailbox without accessing, modifying or deleting any of the messages held in it.
Password
Supply the password for the user account HostMonitor will log into during the test.
Alert when mailbox contains more then [NN] messages
Mark this option and specify limit amount of messages in a mailbox. When this limit is reached, HostMonitor will
change test status to Bad.
Alert when total size of messages bigger than [NN] MB
Mark this option and specify the size limit of all messages in a mailbox. When this limit is reached, HostMonitor
will change test status to Bad.
Note: Value of the 'Reply' field depends on the test's settings:
if test checks number of messages, HostMonitor will display number of messages
if test checks total size of messages, HostMonitor will display total size of messages.
if both these options disabled and test checks server status only (connect, login and logout), Reply value will contain the test execution time (that shows the reply speed of the server).
Reply value is empty when the program cannot connect or login to server
|
IMAP |
Some Internet mail servers support IMAP (Internet Message Access Protocol) for exchanging and manipulating e-mail.
The IMAP test works much in the same way that POP3 test function to test IMAP compliant mail servers. The IMAP test
performed by HostMonitor involves logging in to your mail server using an existing account and checking the status
of the mailbox for that user. As option HostMonitor can check number of messages and size of messages for specified
mailbox. If message count/size exceed specified limit, the program can start alert actions.
In addition to the common test parameters, the IMAP test has the following options:
Server
This is the name or IP address of the mail server that you want to test, usually in the form "mail.yourcom.com".
Port
The default test port is 143, but you can specify a non-standard port.
Timeout
This is the amount of time in seconds the program will wait for a response from the server before the request fails.
Set this to 0 for no timeout (not recommended).
User Name
HostMonitor will test the IMAP server by logging in to it using an existing account. In the user name field, supply
the name of an account that can be used for testing. HostMonitor will log into the account and check the status of
it's mailbox without accessing, modifying or deleting any of the messages held in it.
Password
Supply the password for the user account HostMonitor will log into during the test.
Check mailbox
Mark this combobox and select one of the folowing options to check the parameters of the specified mailbox.
Mailbox
Specify name of the mailbox to check.
Alert when mailbox contains more then [NN] messages
Select this option and specify the limit amount of messages in the mailbox. When this limit is reached, HostMonitor
will change test status to Bad.
Alert when total size of messages bigger than [NN] MB
Select this option and specify the size limit of all messages in the mailbox. When this limit is reached,
HostMonitor will change test status to Bad.
Recent messages only
With this option enabled, HostMonitor will check only recent messages. The recent messages are the messages that
appear in the mailbox after the last check.
Note: Value of the 'Reply' field depends on the test settings:
if test checks number of messages, HostMonitor will display number of messages.
if test checks total size of messages, HostMonitor will display total size of messages
if 'check mailbox' options disabled and test checks server status only (connect, login and logout), Reply value will contain the test execution time (that shows the reply speed of the server).
Reply value is empty when the program cannot connect or login to the server
|
DNS |
The DNS test acts as a low-level resolver and connects directly to the target name server to perform a query.
This means that the test is completely independent of the host files, DNR cache, etc.
In addition to the common test parameters, the DNS test has the following options:
Server
This is the domain name or IP address of the machine running the DNS server that you wish to monitor. Using a
domain name in the DNS Address field requires that the domain name be resolved before the Domain Name Server
can be tested, creating ambiguity in testing. It is better to enter the IP address of your Domain Name Server,
as opposed to the domain name, so that the test will always report the correct error if the DNS fails.
Protocol
Select the protocol to use: TCP or UDP
Port
The default test port is 53, but you can specify a non-standard port. For a list of conventional port numbers
click the button to the right of the port number box.
Timeout
This is the amount of time in seconds the program will wait for a response from the server before the request
fails.
Host name to resolve
This is the domain name the HostMonitor will try to resolve into an IP number. You can check the intranet ability
of the name server by asking it to resolve a machine name within the domain for which it is authoritative (like
yourmachine.yourcompany.com). Or, you can check its Internet ability by asking it to resolve an external machine
name (like www.foreign.com).
Check result address, IP Address
You can define the IP address that will be compared with the address returned from the DNS being tested. You can
use the ½Resolve╗ button to have HostMonitor fill in this field, or you can enter the expected IP number yourself.
|
LDAP |
This test is used to check Directory Servers using the LDAP (Lightweight Directory Access Protocol). To perform
this test HostMonitor connects and binds to the directory server. If the Password property has a value, it is
used for authentication. As an option HostMonitor can perform Search operation using specified base object
and search filter.
In addition to the common test parameters, the LDAP test has the following options:
Server
This is the name or IP address of the LDAP server you want to test.
Port
The default test port is 389, but you can specify a non-standard port. For a list of conventional port numbers
click the button to the right of the port number box.
Timeout
This is the amount of time in seconds the program will wait for a response from the server before the request fails.
Password
Specify the password used to authenticate to the LDAP server.
Perform Search operation
HostMonitor can perform search operation, to implement this behavior mark "Perform Search operation" option and
define follow parameters:
Base object
The Distinguished Name used as the base for LDAP operations (in HostMonitor's case it's a base object during LDAP
searches). The Distinguished Name is provided in string format as specified by RFC 1779.
Search filter
A string representation of the LDAP search filter used during searches. The format of the search filters is
specified by RFC 1558 and is identical to the format used by most LDAP applications. The following are examples
of search filters, as provided in the RFC:
(cn=Babs Jensen)
(!(cn=Tim Howes))
(&(objectClass=Person)(|(sn=Jensen)(cn=Babs J*)))
(o=univ*of*mich*)
Results limit
By default HostMonitor checks only result code returned by the server. If
result code is 0 (success), HostMonitor sets "Host is alive" status.
However if you want to check how many records server returns in response
to search operation, use "Results limit" option. In this case HostMonitor
will check number of records returned by the server and set "Bad contents"
status when number of records below specified limit.
|
RADIUS |
RADIUS test allows you to check Remote Authentication Dial-In User Service (RADIUS).
In addition to the common test parameters, the RADIUS test has the following options:
Server
Specify the host name or IP address of the destination host that should receive and process the request from
HostMonitor. You RADIUS server must be configured to accept packets from the IP address of the machine on which
HostMonitor is installed.
Port
Specify the port number on which the host is listening for incoming packets. By default RADIUS servers using port
#1812. However some RADIUS servers are still using port 1645 even though RFC 2138 notes the conflict with
"datametrics" services. You may need to change 1812 to 1645, this will depend on your RADIUS server
configuration.
Retries
Set the number of times HostMonitor will resend data to the server before test fails.
Timeout
Enter the amount of time (in seconds) that HostMonitor should wait for a response from the server.
Login
Specify the name of the user to be authenticated. You can use invalid (fake) user name and set "Reject reply is
Good" option. In this case HostMonitor will mark test as "bad" and start alert actions only when no reply
received. If any reply from the server will be received, HostMonitor will mark test as "Host is alive". Please
note, for security reasons some RADIUS services will quietly discard invalid request packets. To check these
servers you should specify correct user name and password.
Password
Specify the password of the user to be authenticated.
Secret
Provide a "shared secret". Transactions between the client and RADIUS server are authenticated through the use of
a shared secret, which is never sent over the network. User passwords are sent encrypted between the client and
RADIUS server, to eliminate the possibility that someone snooping on an unsecured network could determine user's
password.
Reject reply is Good / Reject reply is Bad
Choose one of two options:
"Reject" reply is Good
with this option enabled HostMonitor will set test's status to "Host is alive" when any reply received from the server
"Reject" reply is Bad
with this option enabled HostMonitor will set test's status to "Ok" when "Access-Accept" packet received from the server (that means user was successfully authenticated on server). If any other response was received, the program will set "Bad" status. If no answer received, HostMonitor set status to "No answer"
Please note:
- You RADIUS server must be configured to accept packets from the IP address of the machine on which
HostMonitor is installed.
- For some RADIUS servers you can use invalid (fake) user name and/or password and set "Reject reply is Good"
option. In this case HostMonitor will mark test as "bad" and start alert actions only when no reply received.
If any reply from the server will be received, HostMonitor will mark test as "Host is alive".
However, for security reasons some RADIUS services will quietly discard invalid request packets. To check
these servers you should specify correct user name and password.
|
UNC |
Check the UNC path (or local folder) for availability;
for the total amount of free space; or for the amount of free space
available to the current user
(if the operating system implements per-user quotas, this value may be
less than the total number of free bytes on the disk).
For this test you have to specify the UNC path (or local folder) that you wish
to be checked and select the condition for the alert:
when the resource is unavailable
when free space (for current user) is less than a specified value
when the total free space is less than a specified value
See also common test parameters
|
Drive Free Space |
To create a task to check for low disk space, choose "Drive Free Space" as
the test type, select the drive to check, and specify the minimum free space value.
To check available space on a drive elsewhere on the network,
use a UNC test, or map the drive to a drive letter on the local PC that is running HostMonitor.
(Map a drive by locating it in the "Network Neighborhood" area of the
Windows Explorer, right-click it and select "Map network drive".)
See also common test parameters
|
Folder/File Size |
HostMonitor can check folder or file size.
To add this task select the test type "Folder/File Size", enter the folder name and specify
a maximum size. You can manually type in the complete path to the folder
that you wish to test, or click on the "Browse" button to select the folder.
Also, select the option "Include sub-folders" and HostMonitor will calculate
the size for the folder and all its sub-folders.
Set "Translate macros" options if you need use special macros in filename.
See also common test parameters
|
Count Files |
This test allows you to check number of files in the specified directory. Let`s say you have a mailserver that
uses a spool directory. If the mail server is running correctly, it should deliver the mail within 5 minutes to
the internet. Using Count Files test HostMonitor can check the number of files in the mail server`s spool
directory and warn you when number of files exceed specified limit.
In addition to the common test parameters, the Count Files test has the following options:
Folder
Specify the directory in what you want to count the amount of files.
File name mask
Specify file name mask. Usually mask contains wildcard characters, e.g. use '*.*' mask to count all files in the
folder; use '*.eml' mask to count files with .EML extension.
Translate macros
With this option enabled you can use special macro variables in the folder name and in the
file name mask.
Include sub-folders
If the option is disabled, HostMonitor will count files directly in the specified folder. If the option is enabled,
files in the specified folder and in all of its descending subfolders will be counted.
Conditions to count files
Specify additional condition to count files. Choose one of the options:
Count all files
Count files older than NN min
Count files newer than NN min
Count files bigger than NN bytes
Count files smaller than NN bytes
Count subfolders only
Alert when folder contains more than NN files
Specify limit for the file amount. When this limit is reached, HostMonitor will change test status to "Bad". If
you need to start alert actions when file amount become lower than specified, use "Reverse alert"
option.
|
Folder/File Availability |
HostMonitor can check for a file that MUST exist each time a test is run, or
can check for a file that MUST NOT exist each time a test is run.
Select "Folder/File Availability" as the test type and enter the file or folder name.
You can manually type in the complete path and filename that you wish to test,
or click on the "Browse" and you will be presented a dialog for selecting a file.
Set "Translate macros" options if you need to use special macros in filename.
Also you can set additional conditions and HostMonitor will start alert action only when file
older (newer) than [xx] min (hours, days, etc.)
See also common test parameters
|
File Integrity |
HostMonitor can check the integrity of your files and start alert actions if someone change them. This is done
by calculating the CRC (Cyclic Redundancy Check) of the file and comparing it against a previously obtained value.
Select "File Integrity" as the test type and enter the file name. You can manually type in the complete path and
filename that you wish to test, or click on the "Browse" button. Click the "Calculate CRC" button and the program
will calculate and remember the CRC for the file.
See also common test parameters
|
Text Log |
This test is useful when you need to check log files created by another application. Unlike "Compare Files" test
that warns you when any part of a file contains some specific string the Text Log test warns you only when the
string is found in a NEW record. It means that if log file already has "bad' records when you started HostMonitor,
you will not receive any alerts; but if any new "bad" record will be added to the log file while HostMonitor is
running, you will receive a warning about the new problem. So the Text Log test works like NT Event Log test but
it checks text files instead of NT Event Log Database.
In addition to the common test parameters, the Text Log test has the following options:
File
Provide name (with full path specified) of the file that has to be checked. If the test will be performed on a
remote system by RMA you have to enter the full name and path of the file manually. If the test will be performed
by HostMonitor, you may use browse dialog to locate the file.
Use date macros
You may need this option if an application changes log file at regular intervals, e.g. daily or monthly. With this
option enabled you may use special macro variables in the file name (e.g. %dd% represents
current day as a number with a leading zero 01..31)
Look for
string: with this option selected HostMonitor will check records in a log file for a specified string.
If new record contains specified data, HostMonitor will change status of the test to "Bad"
expression: with this option selected HostMonitor will check log records using a boolean (logical)
expression. Status of the test will be set to "Bad" when the text in the record satisfies the required conditions.
In the expression you may use strings (must be concluded in quotes (') or double quotes (")); round brackets;
logical operators "and", "or", "not".
For example: if you define expression like ('error' or 'warning') and not '16536',
then HostMonitor will mark test as "Bad" when line in the log contains string 'error'
or 'warning' and does not contain string '16536'
Options:
Case sensitive
With this option enabled search is case sensitive
Whole words only
Search for the whole words only. With this option disabled, the search string might be found as a part of a word.
Macros
With this option enabled you may use global (user defined) macro variables
in the "look for" string/expression
Warn of last new event
With this option enabled HostMonitor will scan (starting from the end of the log file) all events that were added
into a log file since after the previous test. When the test finds a first "Bad" new record the test receives
"Bad" status and HostMonitor performs specified alert action if it was specified. For example: if HostMonitor
performs test every 10 minutes and 3 "Bad" events occurred within this time interval, HostMonitor will report
only about the last one (because it scans starting from the end of file). This option is useful when you check
for some specific event and don't need many messages about the same recurring error.
Warn of all new events
In opposite to previous mode, with this option enabled HostMonitor will inform you about each event that satisfies
specified requirements. This option is useful when you use one test item to check for different error events
(usually you will use "Repeat: until status changes" option for appropriate alert actions).
Note: HostMonitor changes test status to "Bad" only when it has found NEW event(s) that satisfies all specified
requirements. If, after the next probe, the monitor does not find a new "Bad" event, it changes the test status
to "Ok".
Display
Specifies which information HostMonitor will display in the reply field when the "bad" record is detected in the log file:
found line
offset of the found string in the file
file size
Filter
When you chose "found line" mode you may apply additional filter to the select part of the line to display:
display whole line
display word #N
display word #N counting from the end of line
display text from word #N1 till word #N2
display text from pos #N1 till pos #N2
|
Compare Files |
You can use this test to compare two files or to search a string in the file. 6 alert conditions are available:
alert when files are different
alert when files are identical
alert when 1st file contains 2nd (in any position)
alert when 1st file does not contain 2nd
alert when file contains a specified string
alert when file does not contain a specified string
You can specify one or more parameters to compare files: compare time, compare size, compare contents.
If you set "compare contents" option but don't set "compare size" option, HostMonitor will consider two files are identical when
one file includes another one at offset 0 (one file can be smaller then another one).
Set "Translate macros" options if you need to use special macros in filename.
See also common test parameters
|
Process |
A process, in the simplest terms, is an executing program. HostMonitor can control specified process on local or
remote computer and start alert actions if number of instances of the specified process is out of the defined
range. To control processes on a remote computer you must have the rights to do that (administrator privilege on
the remote computer).
In addition to the common test parameters the Process test has the following options:
Computer name
Specify name of the target computer (the target computer name must be prefixed by "\\"), or select the "<local computer>"
item. You can use the "Browse network" button to select a computer from the list.
Process
Type name of the process to check, or select a process from the drop-down list. Also select lower and/or upper
limit amount of running instances of the specified process, when the limit is reached HostMonitor will mark the
test status as Bad.
Connect as
To check process on remote system you can mark this option and provide a username and a password for a connection
to the target computer.
Note: To monitor processes on a remote Windows NT/2000/XP system, make sure you have the Remote Registry service
started on the remote system (to monitor processes HostMonitor must have access to the registry). On Windows 2000
this service is installed by default, for Windows NT you can find this service in the Resource Kit.
|
Service |
Microsoft Windows NT/2000/XP supports an application type known as a
service. It can be started automatically at system boot, by a user through
the Services control panel applet, or by an application that uses the service
functions. Services can execute even when no user is logged on to the system.
To test services, HostMonitor establishes a connection to the service control
manager on the specified computer and requests the service to update immediately its current
status information. If the service has not been started or the service does not
answer HostMonitor will start the specified alert actions.
Note: To test services on a remote computer you must have appropriate privileges.
In addition to the common test parameters the Service test has the following options:
Computer name
Specify name of the target computer (the target computer name must be prefixed by "\\"), or select the
"<local computer>" item. You can use the "Browse network" button to select a computer from the list.
Service
Type name of the service to check, or select a service from the drop-down list.
Connect as
To check service on a remote system you can mark this option and provide a username and a password for a connection
to the target computer.
|
NT Events Log |
Event logging in Microsoft Windows NT/2000/XP provides a standard, centralized way for applications (and the
operating system) to record important software and hardware events. The event-logging service stores events from
various sources in a single collection called an event log. HostMonitor can check this log and start alert actions
if some specific events occur.
In addition to the common test parameters the NT Event Log test has the following options:
Computer
The Universal Naming Convention (UNC) name of the server on which the event log is to be opened (the target
computer name must be prefixed by "\\"). Type the UNC or select the "<local computer>" item, also you
can use the "Browse network" button to select a computer from the list.
Log
The name of the logfile that the returned handle will refer. This can be the Application, Security, or System
logfile, or a custom registered logfile.
In the Event Log Test Properties dialog define one or more conditions to filter "Bad" events (event will be
considered as "Bad" only when it match ALL specified requirements):
Event Source
Select the source of events (application, service, driver, subsystem). If you leave this field blank, HostMonitor
will check events from all sources.
Computer
Match against the computer that added the entry to the log file. You can provide list of the computers and
choose one of the options:
- Any | name of the computer doesn't matter (event from any computer can be** considered as "Bad") |
- Any from the following | event can be** considered as "Bad" when computer (that added the entry to the log) is specified in the list |
- Any except the following | event can be** considered as "Bad" when computer (that added the entry to the log) is not specified in the list |
BTW: To add a new line to the end of the list go to the last existing line and press Down Arrow button. Press INSERT button to insert new item. Press CTRL+DEL to remove item. Press F2 to edit item.
Event type
Match against the event type. Just mark one or several possible event types: Error, Warning, Information,
Success Audit, and Failure Audit.
Event ID
Match against the event ID (event ID is specific to the software that generated the event log entry). You can provide list of the ID codes and choose one of the options:
- Any | ID doesn't matter (event with any ID can be** considered as "Bad") |
- Any from the following | event can be** considered as "Bad" when ID is specified in the list |
- Any except the following | event can be** considered as "Bad" when ID is not specified in the list |
Description contains
Match against the event description. You can provide list of the text strings (phrases) and choose one of the options:
- Any text | event description doesn't matter (event with any description can be** considered as "Bad") |
- Any string from the list | event can be** considered as "Bad" when description contains ANY string from the list |
- Nothing from the list | event can be** considered as "Bad" when description does not contain ANY string from the list |
- All strings from the list | event can be** considered as "Bad" when description contains ALL strings from the list |
BTW: To add a new line to the end of the list go to the last existing line and press Down Arrow button. Press
INSERT button to insert new item. Press CTRL+DEL to remove item. Press F2 to edit item.
** when we say "can be**", we mean event WILL BE considered as "Bad" WHEN IT MATCHES ALL specified
requirements.
Report about last "Bad" event
With this option enabled HostMonitor will scan (starting from the end of the log) all new events (events those
appeared after previous probe) till first (ok, 'last' because it scans from the end) "Bad" event. If new "Bad"
event is detected, HostMonitor marks test as "Bad" and performs specified alert actions if necessary.
For example: if HostMonitor performs test every 10 minutes and 3 "Bad" events occurred within this time interval,
HostMonitor will report only about last one. This option is useful when you check for some specific event and
don't need many messages about the same recurring error.
Report about all "Bad" events
In opposite to previous mode, with this option enabled HostMonitor will inform you about each event that
satisfies specified requirements. This option is useful when you use one test item to check for different error
events (e.g. you are checking for any event with "Failure Audit" type). BTW do not forget to use "Repeat:
until status changes" option for appropriate alert actions.
HostMonitor changes test status to "Bad" only when it has found NEW event(s) that satisfies all specified
requirements. If, after the next probe, the monitor does not find a new "Bad" event, it changes the test status
to "Ok".
Connect as
To check an Event Log on the remote system you can mark this option and provide a username and a password for a
connection to the target computer.
|
CPU Usage |
CPU Usage test checks the percentage of CPU utilization for the local or remote machine. This test is implemented
for Microsoft Windows NT/2000/XP and Novell Netware 4.x, 5.x.
In addition to the common test parameters the CPU Usage test has the following options:
Computer
Specify name of the target computer, it can be:
"<local computer>" or an empty string when using the test for a local machine;
a Universal Naming Convention (UNC) name of the computer (like "\\Server1") when using this test for remote Windows NT/2000/XP machines;
a server name (like "server1") or NDS tree name (like ".bigcompany.ifx.department2.sever1") when using this test for Novell Netware server.
OS
Select the type of OS on the target computer (Windows NT/2000/XP or Novell Netware).
Alert when CPU usage more than
HostMonitor will mark the host as "Bad" and start alert actions when the percentage of CPU usage becomes more
than specified.
Connect as
To check CPU usage on remote Windows system you may mark this option and provide a username and password for
a connection to the target computer.
Note #1: To monitor CPU utilization on a remote Windows NT/2000/XP system, make sure you have the Remote Registry
service started on the remote system (to monitor processes HostMonitor must have access to the registry). On
Windows 2000 this service is installed by default, for Windows NT you can find this service in the Resource Kit.
Also to use this test for remote Windows NT/2000/XP computers you must have the permissions to do that (administrator
privilege on the remote computer).
Note #2: To check Novell Netware servers, HostMonitor uses the functionality of the Novell Netware client.
Therefore, the Novell Netware client software has to be installed on the machine where HostMonitor is running.
|
Database Server |
HostMonitor can test your SQL servers. It supports Interbase, MS SQL, MySQL,
Oracle, Postgre, and Sybase servers. Servers are checked by logging into
(and out) of the server.
You should specify the server name (the TNS alias for Oracle), database, user name
and password. For Interbase you can specify the protocol (TCP, SPX, or NetBEUI),
for MySQL and for PostgreSQL you can change the default TCP port.
To monitor Oracle servers HostMonitor uses the Oracle Call Interface (OCI.DLL),
you should have the Oracle client software installed on the computer.
The same is true for other SQL servers, install the client software for testing your SQL server.
HostMonitor uses the following DLLs:
gds32.dll to monitor Interbase connections
ntwdblib.dll to monitor MS SQL Server
libmysql.dll to monitor MySQL
libpq.dll to monitor PostgreSQL
libsybdb.dll to monitor Sybase
See also common test parameters
|
ODBC Query |
This test allows you to check the availability of an ODBC data source, run an SQL query, and analyze the value of
a specified data field in the result set returned. To set up a test, simply pick one of the ODBC data sources
defined in your system, and fill in the Login, Password and Timeout fields. Optionally, provide an SQL query
and a condition to check. If no condition is specified, the two possible test status values are "Alive" and
"No answer". If a condition is provided, test status can be either:
"Ok" - if the condition is met;
"Bad" - if the condition is not met;
"Unknown" - if the query fails, or the data field specified is not found in the result set.
If field is unavailable, set status
Starting from version 3.62 you can use above option to define status of
the test in case SQL query was executed without errors but result data
set does not contain specified field (specified by row and col parameters).
Choose one of the following statuses:
Unknown
Bad
Ok
See also common test parameters
|
SNMP |
The Simple Network Management Protocol is the Internet standard protocol for exchanging management information between management console applications and managed entities (hosts, routers, bridges, hubs).
Using this powerful test HostMonitor can control many different parametrs of network devices.
In addition to the common test parameters, the SNMP test has the following options:
Agent address
A string specifying either a dotted-decimal IP address or a host name that can be resolved to an IP address, an
IPX address (in 8.12 notation), or an Ethernet address.
Community
A string specifying the SNMP community name used when communicating with the device specified in the Agent Address
parameter. By default on SNMP systems this is "PUBLIC" but it can be different on your systems.
Timeout
This is the amount of time in seconds the program will wait for a response from the server before the request fails.
Retries
Specifies the communications retry count.
OID (object identifier)
The name that uniquely identifies the object for testing.
For example OID "1.3.6.1.2.1.2.1" represents the number of network interfaces on which your system can
send/receive IP datagrams; OID "1.3.6.1.2.1.6.9" represents the number of TCP connections for which the current
state is either ESTABLISHED or CLOSE-WAIT; etc. To get a list of valid OIDs for your SNMP enabled devices you
should contact the vendor of the device. They should be able to give you a MIB file that contains all the OIDs
for the device.
Condition for alert
HostMonitor can compare values returned by the device with a specified string and start alert actions if the
returned value is:
less/more than the specified value
equal to/different from the specified number or string
contains/doesn't contain the specified string
Also HostMonitor has 9 alert conditions to check how new value changes compare to the previous test:
"increases by" | - | HM sets "Bad" status when value increases by specified number or more |
"decreases by" | - | HM sets "Bad" status when value decreases by specified number or more |
"changes by" | - | HM sets "Bad" status when value changes by specified number or more |
"increases by (%)" | - | HM sets "Bad" status when value increases by specified (or greater) percentage |
"decreases by (%)" | - | HM sets "Bad" status when value decreases by specified (or greater) percentage |
"changes by (%)" | - | HM sets "Bad" status when value changes by specified (or greater) percentage |
"increases /sec" | - | HM sets "Bad" status when average increase of the counter (per second) is greater than the specified limit ((new value - old value)/elapsed time >= specified limit) |
"decreases /sec" | - | HM sets "Bad" status when average decrease of the counter (per second) is greater than the specified limit ((old value - new value)/elapsed time >= specified limit) |
"changes /sec" | - | HM sets "Bad" status when average change of the counter (per second) is greater than the specified limit (abs(new value - old value)/elapsed time >= specified limit) |
|
RAS |
The RAS check type useful for monitoring remote RAS server. With this test HostMonitor tries to connect to the
server using specified dial-up connection, sets status of the test ("Ok", "Bad", "No answer", or "Unknown"
depending on the connection result), and disconnects from the server.
In addition to the common test parameters, the RAS test has the following options:
Connection
Select from drop down list the remote access entry to establish the connection.
User name
Specify the user's name. This parameter is used to authenticate the user's access to the remote access server. If
the user name is empty string (""), HostMonitor uses the user name of the current logon context for authentication.
For a user-mode application, RAS uses the credentials of the currently logged-on interactive user. For a Win32
service process, RAS uses the credentials associated with the service.
Password
Specify the user's password. This parameter is used to authenticate the user's access to the remote access server.
If the password is empty string (""), HostMonitor uses the password of the current logon context for authentication.
For a user-mode application, RAS uses the credentials of the currently logged-on interactive user. For a Win32
service process, RAS uses the credentials associated with the service.
Save password
This option has sense only if Password parameter is not an empty string. Specifies whether to save the password
(in the phone-book entry) for the user indicated by User Name parameter or not. If "Save password" option is
disabled, the password will be removed. Disabling option is equivalent to checking the "Unsave Password"
checkbox in Dial-Up Networking dialog.
Retries
Set the number of times the dial-up connection is automatically redialed if the first attempt to connect fails.
HostMonitor does not perform second attempt in case connection failed because of the wrong user name or password.
If you setup HostMonitor to check several servers using the single modem connected to your computer, it is good
idea to set retries to 3 or more attempts and use Wait between retries option. In this case test that was started
second (third, forth, etc) will wait for the first test to end and release modem.
Wait between retries
If attempt to dial fails, HostMonitor will wait specified amount of seconds before making another attempt. Of
course this parameter makes sense only when Retries field set to 2 or more attempts.
After execution of a test HostMonitor can set one of four statuses:
"Ok" status HM sets when connection was successfully established (physical connection modem-to-modem, and network connection as well).
"Bad". There can be many reason for this status, e.g. wrong user name or password, some problems with RAS server, etc.
"No answer". The program uses this status when modem does not receive answer from remote modem.
"Unknown". This status HostMonitor sets when connection was not established because of a problem on local system,
e.g. modem is used by another application. You can use "Treat Unknown status as Bad"
option. With this option enabled, if test results cannot be obtained, actions are triggered by HostMonitor the
same way as if the test returned a "Bad" status.
|
Performance Counter |
Performance Counter test allows you to monitor specific aspects of work performed on local or remote computer by
a system or a service. You can monitor a lot of important parameters of the system (that is running Windows NT 4.0,
Windows 2000, or Windows XP), such as:
Counter | Description |
Processor\% Processor Time | % Processor Time is the percentage of time that the processor is executing a non-Idle thread |
Processor\% Interrupt Time | % Interrupt Time is the percentage of time the processor spent receiving and servicing hardware interrupts during the sample interval |
Processor\Interrupts/sec | Interrupts/sec is the average number of hardware interrupts the processor is receiving and servicing in each second |
System\Processes | Processes is the number of processes in the computer at the time of data collection |
TCP\Connections Established | Connections Established is the number of TCP connections for which the current state is either ESTABLISHED or CLOSE-WAIT |
TCP\Segments/sec | Segments/sec is the rate at which TCP segments are sent or received using the TCP protocol |
Process\% Processor Time | % Processor Time is the percentage of elapsed time that all of the threads of specified process used the processor to execute instructions |
Process\Handle Count | The total number of handles currently open by specified process |
Printer Queue\Jobs | Current number of jobs in a print queue |
PhysicalDisk\% Disk Time | % Disk Time is the percentage of elapsed time that the selected disk drive is busy servicing read or write requests |
PhysicalDisk\Current Disk Queue Length | Current Disk Queue Length is the number of requests outstanding on the disk at the time the performance data is collected |
Memory\Available Bytes | Available Bytes is the amount of physical memory available to processes running on the computer, in bytes |
NetworkInterface\Current Bandwidth | Current Bandwidth is an estimate of the interface's current bandwidth in bits per second (BPS) |
and much moreà
To create Performance Counter test you need to define just 3 parameters (of course in addition to the
common test parameters):
Performance Counter
Type name of the counter to monitor or use browse button to explore all performance counters available on the system.
Note: Each counter is uniquely identified through its name and its path, or location. In the same way that a file
path includes drives, directories, subdirectories, and file names, a counter path consists of four elements: the
machine, the object, the object instance, and the counter name. The syntax of a counter path is:
\\Machine\PerfObject(ParentInstance/ObjectInstance#InstanceIndex)\Counter
Condition for alert
HostMonitor can compare value of the counter with a specified number and start alert actions if the returned value is:
less than the specified value
more than the specified value
equal to the specified number
different from the specified number
Also HostMonitor has 9 alert conditions to check how new value changes compare to the previous test:
"increases by" | - | HM sets "Bad" status when value increases by specified number or more |
"decreases by" | - | HM sets "Bad" status when value decreases by specified number or more |
"changes by" | - | HM sets "Bad" status when value changes by specified number or more |
"increases by (%)" | - | HM sets "Bad" status when value increases by specified (or greater) percentage |
"decreases by (%)" | - | HM sets "Bad" status when value decreases by specified (or greater) percentage |
"changes by (%)" | - | HM sets "Bad" status when value changes by specified (or greater) percentage |
"increases /sec" | - | HM sets "Bad" status when average increase of the counter (per second) is greater than the specified limit ((new value - old value)/elapsed time >= specified limit) |
"decreases /sec" | - | HM sets "Bad" status when average decrease of the counter (per second) is greater than the specified limit ((old value - new value)/elapsed time >= specified limit) |
"changes /sec" | - | HM sets "Bad" status when average change of the counter (per second) is greater than the specified limit (abs(new value - old value)/elapsed time >= specified limit) |
HostMonitor can set status of the test to "Unknown" in case it cannot retrieve performance counter value (e.g.
unable to connect to the remote machine or the specified counter could not be found). You can use
"Treat Unknown status as Bad" option. With this option enabled, if test results
cannot be obtained, actions are triggered by HostMonitor the same way as if the test returned a "Bad" status.
Display mode
This parameter defines information display method. You can select one of
the following options:
as is | - | do not perform any conversion |
sec -> [days] hh:mm:ss | - | converts received value in seconds to a "[days] hh:mm:ss" format |
msec-> [days] hh:mm:ss | - | converts received value in milliseconds to a "[days] hh:mm:ss" format |
bytes -> Kb | - | converts received value in bytes to kilobytes |
bytes -> Mb | - | converts received value in bytes to megabytes |
bytes -> Gb | - | converts received value in bytes to gigabytes |
Important notes:
Note #1 (permissions): The security on the following registry key dictates which users or groups can gain
access to the performance data: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows_NT\CurrentVersion\Perflib.
In order for to query performance data, account must have KEY_READ access to the above registry key. To change
permissions to the registry key you can use the registry editor utility (Regedt32.exe).
Note #2 (bugs): Windows implementation of performance counters has bugs. E.g., Windows 2000 (Professional,
Server, and Advanced Server editions) can produce memory leak in Pdh.dll when user (application) querying
performance counter that does not exist. This bug fixed in SP2. Also pdh.dll does not work correctly with
multithread applications.
That's why in HostMonitor we have implemented several different methods to work with pdh.dll:
MultiThread mode: HostMonitor works almost according to Microsoft documentation with some workaround to avoid
most likely problems. HM loads pdh.dll at once and uses it all the time. This method fast because HM can
start several tests simultaneously. If everything will work correctly on your system, use this method
(by default HostMonitor uses this method).
OneByOne mode: Using this method HM will start Performance Counter tests one by one and reload pdh.dll every
time. This method slow (when you setup Performance Counter test using Test Properties dialog program even
can hang for 1-2 min) but using this method you will avoid some problems due to a buggy pdh.dll
Smart mode: With this method HM will try to detect when pdh.dll need to be reloaded.
To change mode, add line "PerfWorkMode=N" to hostmon.ini file into [Misc] section and restart HostMonitor.
N is number of the mode: 0 - MultiThread mode, 1 - OneByOne mode, 2 - Smart mode
|
Script |
Starting from HostMonitor version 3.40 you can create your own tests using different script languages such as Visual
Basic Script or Java Script. HostMonitor uses Microsoft ActiveScripting technology to execute scripts that were
written by you or somebody else. Theoretically using this type of test you can check anything what is possible to
check (if its impossible to retrieve some information using script language, you can create ActiveX object (e.g.
using C++) and use this object in the script). So, you are the one who can improve HostMonitor to suit all your
needs. BTW you can create your own script language
In addition to the common test parameters, the Script test has the following options:
Run script from external file
Set this option and specify script file name that HostMonitor will load and execute every time test is performed.
This option allows you to change script any time without changing HostMonitor's settings. E.g. HostMonitor can be
loaded on server machine and execute scripts located on workstations.
Store script inside HML file
With this option enabled HostMonitor will store script inside HML file with test settings. You can protect
HostMonitor's settings by password and be sure nobody read or modify your scripts.
Language
The Language property determines language in which a script is written. HostMonitor can use any script engine that
is installed on your system. VBScript and JScript installed by default on Windows 2000/XP. Also you can download
and install additional script languages, for more information please refer to Technical
requirements paragraph.
Timeout
The Timeout property offers a safety shield to prevent a script program from going into an infinite loop and
locking up the system. It specifies the maximum number of seconds the script will run before an error will be
generated.
Alow UI
When this option enabled the script program can display user interface (UI) elements such as a MsgBox.
Translate macros
With this option enabled you can use special macro variables in your
script.
Also Test Properties dialog contains Edit and Test buttons. First button opens Script Editor window that allows
you to view, modify, and execute script. Test button executes script and displays result or an error message.
Requirements to the script:
HostMonitor has just a few requirements:
1. | script must contain "performtest" function. HM always call function with this name |
2. | "performtest" function must not have any parameters |
3. | "performtest" function must return string value. This string contains two parts separated by colon (:).
First obligatory part contains test status, it can take following values:
"Host is alive"
"No answer"
"Unknown"
"Unknown host"
"Ok"
"Bad"
"Bad contents"
Second optional part contains "Reply" value, HostMonitor displays this value in Reply field, writes to log
files, uses to displays charts (Log Analyzer), etc.
Several examples:
return "Host is alive:1000 ms" | | Jscript; Status: Host is alive; Reply: 1000 ms |
return "Unknown host:" | | Jscript; Status: Unknown host; Reply: empty |
performtest = "Ok:300 Kb" | | VBscript; Status: Ok; Reply: 300 Kb |
performtest = "Bad:90 %" | | VBscript; Status: Bad; Reply: 90 % |
|
3a. | If you want Log Analyzer will be able correctly process "Reply" values and displays charts, use
one of the following formats for "Reply" value:
decimal_number (like '123', '0', '6456.45'. as decimal separator use symbol that is specified on your system, usually a dot (.) or a comma (,))
decimal_number + space + 'Kb' (like '512 Kb', '64 Kb')
decimal_number + space + 'Mb' (like '1024 Mb', '5 Mb')
decimal_number + space + 'Gb' (like '12 Gb', '4 Gb')
decimal_number + space + '%' (like '50 %', '99 %')
decimal_number + space + 'ms' (like '100 ms', '5400 ms')
|
That's it. Everything else is entirely up to you
When you create new script HostMonitor provides template with constants that describe test statuses and with empty
"performtest" function.
Also you can find several simple examples of scripts in HostMonitor's directory "Examples\".
DrivesList.vbs | - | VBScript, checks list of disk drives on local system. Set test's status to "Bad" when list of drives changes. E.g. when user map/unmap network drive. |
DrivesList.js | - | JScript, analogue of DrivesList.vbs |
DiskSpaces.vbs | - | VBScript, checks difference between free disk space on drive C: and drive D: Sets status to "Bad" when drive C: has less amount of free space than drive D: |
DiskSpaces.js | - | JScript, analogue DiskSpaces.vbs |
CheckWord.vbs | - | VBScript, statrs MS Word, opens document and returns number of characters in the document. If MS Word is not installed or document does not exist, test's status will be "Uknown" |
RegRead.vbs | - | VBScript, reads registry data. Sets test's status to "Bad" when some application (or a user) changes address to a web page that Internet Explorer use as home page |
RegRead.js | - | JScript, analogue RegRead.vbs |
Technical requirements:
As we already said HostMonitor uses Microsoft ActiveScripting technology to execute scripts. Microsoft ActiveScript
is basically 2 related COM objects: the scripting engine and the scripting host.
The scripting host is responsible for the interaction between application and the scripting engine. HostMonitor
uses MS Script Control as scripting host. It means MS Script Control must be installed on your system to perform
script tests. Normally, this control is installed in Windows 2000, and Windows XP. If you have an old versions of
Windows (Windows 98/ME/NT 4.0), you can download the MS Script Control from
http://msdn.microsoft.com/downloads/default.asp?URL=/downloads/sample.asp?url=/msdn-files/027/001/733/msdncompositedoc.xml
The scripting engine is the COM object that actually processes the scripts, e.g. VBScript, JScript, etc. These COM
objects are usually provided by a third party (in the case of VBScript it's provided by Microsoft). On Windows
2000/XP VBScript and Jscript installed by default, also you can download and install additional script languages.
If you have old version of Windows or if you want to use another script language, follow links can be useful for
you:
Visual Basic Script (VBScript) and Java Script (Jscript) for Windows 98, ME, NT 4.0, 2000 are available at http://msdn.microsoft.com/scripting
Perl is available from www.activestate.com
Python is available at the same site www.activestate.com
Haskell is available at http://www.haskell.org/haskellscript
Of course we don't know about all script languages available on the Internet, these are just the most popular that
we know about.
Useful links:
There are some useful links:
Scripting FAQ: http://www.mindspring.com/~mark_baker/toc.htm
Microsoft Visual Basic Script documentation available at http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vtoriVBScript.asp
Microsoft Java Script documentation available at http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/js56jsoriJScript.asp
|
External |
HostMonitor has many built-in check types, but it can not support all possible
check types. That's why the program contains an External Test. With the
External Test, HostMonitor uses an external application to perform a test
and, based on the returned errorlevel, will flag the test entry as being
up or down.
In addition to the common test parameters, the External test has the following options:
External program
Specify command line to launch external application
Condition
Choose condition to mark test as failed (and start alert action):
is < than | - | alert if the errorlevel returned by the program is less than a specified code. |
is > than | - | alert if the errorlevel returned by the program is greater than a specified code. |
is = to | - | alert if the errorlevel returned by the program is equal to a specified code. |
is <> from | - | alert if the errorlevel returned by the program is different than a specified code. |
Window mode
This parameter specifies how the application window is going to be shown. Choose one of the possible options:
SW_SHOWNORMAL | - | displays an application window in its original size and position. |
SW_HIDE | - | starts application without displaying its window. |
SW_MAXIMIZE | - | displays an application window as a maximized window. |
SW_MINIMIZE | - | displays an application window as a minimized window. |
SW_SHOWMINNOACTIVE | - | displays an application window as a minimized window. The active window remains active. |
SW_SHOWNOACTIVATE | - | displays an application window in its original size and position. The active window remains active. |
Kill application if not answer after N sec
You may select the "Kill application after N sec" option and specify a timeout.
In this case if the external application hasn't returned an error level
to HostMonitor within the given timeout, HostMonitor will flag the test
entry as down and "kill" the external application.
|
Macros |
When you setup "Folder/File Size", "File/Folder Availability", "Count Files", "Text Log" or "Compare Files" tests
you can set "Translate macros" option and use special macro variables in the file name:
%d% | - | Current day as a number without a leading zero (1-31). |
%dd% | - | Current day as a number with a leading zero (01-31). |
%ddd% | - | Current day as an abbreviation (Sun-Sat) using system's regional settings. |
%dddd% | - | Current day as a full name (Sunday-Saturday) using system's regional settings. |
%ddddd% | - | Current date using the short date format (see Windows Regional Options). |
%dddddd% | - | Current date using the long date format. |
%m% | - | Current month as a number without a leading zero (1-12). |
%mm% | - | Current month as a number with a leading zero (01-12). |
%mmm% | - | Current month as an abbreviation (Jan-Dec) using system's regional settings. |
%mmmm% | - | Current month as a full name (January-December) using system's regional settings. |
%yy% | - | Current year as a two-digit number (00-99). |
%yyyy% | - | Current year as a four-digit number (0000-9999). |
%h% | - | Current hour without a leading zero (0-23). |
%hh% | - | Current hour with a leading zero (00-23). |
%n% | - | Current minute without a leading zero (0-59). |
%nn% | - | Current minute with a leading zero (00-59). |
%t% | - | Current time using the short time format. |
%tt% | - | Current time using the long time format. |
%am/pm% | - | Uses the 12-hour clock for the preceding h or hh specifier, and displays 'am' for any hour before noon, and 'pm' for any hour after noon. The am/pm specifier can use lower, upper, or mixed case, and the result is displayed accordingly. |
%a/p% | - | Uses the 12-hour clock for the preceding h or hh specifier, and displays 'a' for any hour before noon, and 'p' for any hour after noon. The a/p specifier can use lower, upper, or mixed case, and the result is displayed accordingly. |
%/% | - | Displays the date separator character given by the DateSeparator global variable. |
%:% | - | Displays the time separator character given by the TimeSeparator global variable. |
Macro specifiers may be written in upper case as well as in lower case letters - both produce the same result.
Examples:
c:\database\archives\%DDMMYYYY%.zip
c:\database\archives\%dd%-%mm%-%yy%.zip
|